The present invention relates to an error correcting mechanism of the optical disc play system, particularly to a mechanism for correcting errors in the content read out from an optical disc by an optical disc player.
The present day sees very rapid development of the optical storage technology. Today's optical storing media have the advantages of large capacity, high density and small size. With the development of the optical storing media, new types of errors of content stored on these media also emerge incessantly, which greatly affect the play quality of the optical disc.
The methods and apparatuses of the optical disc players in the prior art for correcting the content errors will be described with reference to FIGS. 1 and 2.
FIG. 1 is a block diagram of an optical disc player in the prior art. The optical disc player 10 comprises reading module 110, decoding module 111 and controlling module 112. Reading module 110 reads out content in an optical disc, decoding module 111 decodes the read out content and outputs the decoded content, and controlling module 112 controls the reading process and decoding process, and determines whether there are physical and/or logic errors in the read out content. If there are errors, the controlling module corrects the errors itself or manually. The controlling module can be run by firmware, for example, by the programming commands stored in the ROM. In this context, the physical errors refer to defects in the content read out by an optical disc player from the optical disc, which result from physical damages of the optical disc (such as abrade, shatter crack, incline). Logic errors are that, when encoding data and storing them on optical discs, the encoding method adopted is not complied with standard encoding methods (such as adoption of inaccurate initiate number, invalid DVD navigation information or non-standard video format, or synchronous code missing), which makes it impossible for the controlling module to use the pre-determined method to recognize the content read out from the optical disc and to control the decoding module to decode it.
When there is a defect part (i.e. physical errors) in the read out content, controlling module 112 will instruct the reading module 110 to read it again. However, if the number of the times of the retry exceeds a pre-determined threshold value, the controlling module 112 will instruct the reading module to skip the defect part. After reading, controlling module 112 will control the decoding module 111 to decode the read out content. If in the process of decoding, the read out content is found to be encoded with a non-standard encoding method, and cannot be decoded with the pre-determined decoding method (i.e. logic errors), the firmware in the apparatus has to be updated, so as to decode the read out content with an appropriate decoding method. However to update firmware in the prior art, a player manufacturer has to replace the whole firmware manually or give the user a piece of firmware upgrading software for him to update the firmware himself.
FIG. 2 shows a flow chart of the process of correcting errors in the content read out by an optical disc player in the prior art. Firstly, read the content from an optical disc (step S211). If any defect parts are identified in the read out content, that is, physical errors exist (step S212), then a comparison is made between the number of the retry times and the pre-determined threshold value (step S213). If the number of the retry times is less than the threshold value, the retry time will be increment by 1 (step 214), and the content is read out again (that is, return to step S211). But if the number of the retry times is more than the threshold value, this part of the content will be skipped (step S215). After that, it is determined, in step 216, whether there are logic errors in the read out content or in the content after the physical errors are corrected. If there are logic errors, the firmware will be prompted to be updated manually (step S217), then the content is decoded after correcting the logic errors (step S218). If it is determined in step S216 that there are not any logic errors, jump to step S218 directly and decode the content.
From the above description of the prior art, we can see that the optical disc player adopts a comparatively passive way to correct physical errors, that is, retry to read and if the number of retry exceeds a pre-determined value/number, the content will be skipped. This may result in discontinuous content playing. Besides, in the prior art, logic errors are not corrected in time, which may result in interruption of the play or mosaic on the screen. And to correct logic errors, it is necessary to replace the firmware manually, and, as a result, the whole error correcting process becomes rather complicated and inconvenient.